package com.hua.mapper;

import com.hua.pojo.Comment;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hua.utils.CanteenCommentDTO;
import com.hua.utils.CommentDetailDTO;
import com.hua.utils.UserCommentDTO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author hua
 * @since 2023-12-24
 */
public interface CommentMapper extends BaseMapper<Comment> {

    //多表查询评论信息
    List<CommentDetailDTO> selectCommentDetailsByFoodIdWithPagination(@Param("foodId") Integer foodId, @Param("pageSize") Integer pageSize,@Param("offset") Integer offset);

    //多表实现，用户评论汇总,筛选出该用户的所有评论
    List<UserCommentDTO> selectUserComment(@Param("userId")Integer userId);

    //查询某个饭堂所有菜品的评论，返回：评论者的网名、菜名、打分、评论内容、评论时间、是否展示
    List<CanteenCommentDTO> selectCanteenAllComment(@Param("canteenID")Integer canteenID);

    //每新增一条评论，就对评分做一次平均统计
    int ratingAverageValue(@Param("id") Integer id);
}
